﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Vista.Seguridad
{
    public partial class FormGrupos : Form
    {

        string tipo_operacion;

        public FormGrupos(string modo)
        {
            InitializeComponent();
            tipo_operacion = modo;
            this.CenterToScreen();
        }


        Entidades.Seguridad.Grupo oGruposs;

        public FormGrupos(string modo, Entidades.Seguridad.Grupo oGrupo)
        {
            InitializeComponent();
            oGruposs = oGrupo;
            tipo_operacion = modo;
            if (tipo_operacion == "Modificar")
            {
                txtID.Enabled = false;
                txtID.Text = oGruposs.IdGrupo;
                txtdescrip.Text = oGruposs.Descripcion;
                checkEstado.Checked = Convert.ToBoolean(oGrupo.Estado);
            }
        }

        private void btnguardar_Click(object sender, EventArgs e)
        {
            if (validardatos())
            {
                if (tipo_operacion == "Nuevo")
                {
                    Entidades.Seguridad.Grupo oGrupo = new Entidades.Seguridad.Grupo();
                    oGrupo.IdGrupo = txtID.Text;
                    oGrupo.Descripcion = txtdescrip.Text;
                    oGrupo.Estado = Convert.ToByte(checkEstado.Checked);
                    
                    bool respuesta = Controladora.Seguridad.CUGestionargrupos.ObtenerInstancia().AgregarGrupos(oGrupo);
                    if (respuesta == true)
                    {
                        MessageBox.Show("El grupo se agrego correctamente");
                        this.Close();
                    }
                    else
                    {
                        MessageBox.Show("ID Existente");
                        txtID.Text = null;
                        txtID.Focus();
                    }
                }
                else if (tipo_operacion == "Modificar")
                {
                    oGruposs.IdGrupo = txtID.Text;
                    oGruposs.Descripcion = txtdescrip.Text;
                    oGruposs.Estado = Convert.ToByte(checkEstado.Checked);
                    Controladora.Seguridad.CUGestionargrupos.ObtenerInstancia().ModificarGrupo(oGruposs);
                    this.Close();
                }
            }
        }

        private bool validardatos()
        {
            if (this.txtID.Text.Trim() == "")
            {
                MessageBox.Show("Debe ingresar un ID");
                txtID.Focus();
                return false;
            }
            else if (this.txtdescrip.Text.Trim() == "")
            {
                MessageBox.Show("Debe ingresar una descripcion");
                    txtdescrip.Focus();
                return false;
            }
            return true;
        }

        private void btncancelar_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}
